From: Jasper St. Pierre Date: Wed, 10 Oct 2012 21:20:16 +0000 (-0300) Subject: screenShield: Remove erroneous top/bottom padding that may appear X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~5631 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=cf0ae8f1824153a593827e1e3ab5b8faa8f1b049;p=gnome-shell.git screenShield: Remove erroneous top/bottom padding that may appear If there are either no resident or persistent notifications, we'll add some spacing for those boxes that may contain nothing. Make them invisible to remove the spacing for those elements. It's possible that we may want to be smarter about this in StBoxLayout to remove spacing for zero-sized actors, but today is not the day. https://bugzilla.gnome.org/show_bug.cgi?id=685919 --- diff --git a/js/ui/screenShield.js b/js/ui/screenShield.js index 8f480d4cc..0e5557eb0 100644 --- a/js/ui/screenShield.js +++ b/js/ui/screenShield.js @@ -126,13 +126,12 @@ const NotificationsBox = new Lang.Class({ }, _updateVisibility: function() { - if (this._residentNotificationBox.get_n_children() > 0) { - this.actor.show(); - return; - } + this._residentNotificationBox.visible = this._residentNotificationBox.get_n_children() > 0; + this._persistentNotificationBox.visible = this._persistentNotificationBox.get_children().some(function(a) { + return a.visible; + }); - let children = this._persistentNotificationBox.get_children(); - this.actor.visible = children.some(function(a) { return a.visible; }); + this.actor.visible = this._residentNotificationBox.visible || this._persistentNotificationBox.visible; }, _sourceIsResident: function(source) {